table of contents
SERVICES(5) | Manuel du programmeur Linux | SERVICES(5) |
NOM¶
services - Liste des services réseau internet
DESCRIPTION¶
services est un fichier texte ASCII fournissant une correspondance entre des noms textuels faciles à mémoriser pour les services et les numéros de ports qui leur sont assignés, ainsi que les types de protocoles. Chaque programme en relation avec le réseau peut consulter ce fichier pour obtenir le numéro de port (et le protocole) pour ses services. Les programmes de la bibliothèque C getservent(3), getservbyname(3), getservbyport(3), setservent(3) et endservent(3) permettent d'effectuer des requêtes dans ce fichier à partir de programmes.
Les numéros de ports sont assignés par l'IANA (Internet Assigned Numbers Authority), et la politique actuelle est, lors de l'assignation d'un numéro de port, d'assigner à la fois les protocoles TCP et UDP. En conséquence, la plupart des entrées sont en double, même pour les services qui n'existent qu'en TCP.
Les numéros de ports inférieurs à 1024 (encore appelés ports « bas » (low numbered)) ne peuvent être liés que par root (consultez bind(2), tcp(7) et udp(7)). De cette manière, les clients qui se connectent à ces ports peuvent être certains que le service qui tourne sur le port est conforme à son implémentation standard et non pas un service pirate lancé par un utilisateur de la machine. Les numéros de ports habituels, spécifiés par l'IANA, sont normalement placés dans cet endroit réservé à root.
La présence dans le fichier services d'une entrée pour un service ne signifie pas forcément que ce service est actuellement actif sur la machine. Consultez inetd.conf(5) pour la configuration des services Internet offerts. Notez que tous les services réseau ne sont pas démarrés par inetd(8), et qu'ils n'apparaîtront donc pas dans inetd.conf(5). En particulier, les serveurs de nouvelles (NNTP) et de courrier électronique (SMTP) sont souvent initialisés depuis les scripts d'initialisation du système.
L'emplacement du fichier services est défini par _PATH_SERVICES dans <netdb.h>. Il est habituellement défini à /etc/services
Chaque ligne décrit un service, elle est de la forme :
- nom_de_service port/protocole [alias ...]
- où :
- nom_de_service
- est le nom facilement compréhensible par lequel ce service est connu et recherché. Il est sensible à la casse. Souvent, le programme client est appelé du même nom que nom_de_service
- port
- est le numéro de port (en décimal) à utiliser pour ce service.
- protocole
- est le type de protocole utilisé. Ce champ doit correspondre à une entrée du fichier protocols(5). Des valeurs typiques sont tcp et udp.
- alias
- est une liste optionnelle des autres noms pour ce service, séparés par un espace ou un caractère de tabulation. Là encore, les noms sont sensibles à la casse.
Les champs sont séparés soit par des espaces soit par des tabulations.
Les commentaires débutent par un signe « # » et se poursuivent jusqu'à la fin de la ligne. Les lignes vierges sont ignorées.
Comme les espaces de tête ne sont pas éliminés, le nom_de_service doit commencer à la première colonne du fichier. nom_de_service peut comporter n'importe quel caractère imprimable à l'exclusion des caractères d'espacement et de tabulation. Cependant, un nombre restreint de caractères devrait être utilisé afin de minimiser les problèmes de compatibilité. Par ex., a-z, 0-9 et le tiret (-) semble être un choix raisonnable.
Les lignes qui ne correspondent pas à ce format ne devraient pas se trouver dans ce fichier. (Actuellement, elle sont ignorées silencieusement par getservent(3), getservbyname(3) et getservbyport(3). Ce comportement n'est cependant pas garanti).
Ce fichier peut être diffusé sur le réseau, en utilisant un service de noms valable pour l'ensemble du réseau tel que « Yellow Pages/NIS » ou « BIND/Hesiod ».
Un exemple de fichier services pourrait ressembler à ceci :
netstat 15/tcp qotd 17/tcp quote msp 18/tcp # protocole d'envoi de message msp 18/udp # protocole d'envoi de message chargen 19/tcp source ttytst chargen 19/udp source ttytst ftp 21/tcp # 22 - non assigné telnet 23/tcp
FICHIERS¶
- /etc/services
- Liste des services réseau Internet
- <netdb.h>
- Définition de _PATH_SERVICES
VOIR AUSSI¶
listen(2), endservent(3), getservbyname(3), getservbyport(3), getservent(3), setservent(3), inetd.conf(5), protocols(5), inetd(8)
Numéros de RFC assignés, la plus récente est la RFC 1700 (STD0002).
COLOPHON¶
Cette page fait partie de la publication 3.52 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.
TRADUCTION¶
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.
Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain Portal <http://manpagesfr.free.fr/> (2003-2006). Jean-Luc Coulon et l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à <perkamon-fr@traduc.org>.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».
22 mai 2010 | Linux |